Adaptive filters are used in many applications throughout signal processing, including, for example, echo cancellers, channel equalizers and speech coders. The fundamental use of adaptive filters is for tracking changes in the underlying parameters of these systems. Any improvement that improves this tracking ability often translates into an improvement in the purpose to which the adaptive filter is put.
Perhaps the most common algorithm in use today is the Proportionate Normalized Least Mean Square (PNLMS) algorithm. Those skilled in the pertinent art understand that the PNLMS algorithm employed with an adaptive filter has been shown to provide relatively fast convergence and tracking when the underlying system parameters are sparse. Such results are especially true in the problem of network echo cancellation. When employed in an adaptive filter, the PNLMS algorithm has been provided much faster convergence and tracking than the more antiquated Normalized Least Mean Squares (NLMS) adaptive filter algorithm when the solution is sparse in non-zero terms.
Unfortunately, the basis set of vectors typically selected by such conventional algorithms (e.g., PNLMS and NLMS, to name a few) do not account for the “sparseness” of the solution vectors produced by these algorithms. It is known that the adaptive filters employing certain algorithms, such as the popular PNLMB algorithm, provide fast convergence and tracking when the underlying system parameters are sparse. However, since even the advanced PNLMB algorithm, as well as other conventional algorithms, does not focus on the sparseness of the system parameters in which they are employed, their value in non-sparse systems has proven to be limited. In fact, in many situations, the convergence and tracking provided by the older NLMS algorithm is faster than that provided by the PNLMS algorithm when employed in non-sparse systems.
Accordingly, what is needed in the art is way to prepare parameters derived from a non-sparse system such that they are rendered suitable for efficient processing by a PNLMS algorithm.